// 导入卡片组件
import { install } from '../helpers';
import Menu from './Menu.vue';
import MenuItem from './MenuItem.vue';
import SubMenu from './SubMenu.vue';
import MenuItemGroup from './MenuItemGroup.vue';
import RecursiveMenuItem from './RecursiveMenuItem.vue';

// 组件列表
const TuiMenuComponents = {
  'tui-menu': Menu,
  'tui-menu-item': MenuItem,
  'tui-sub-menu': SubMenu,
  'tui-submenu': SubMenu,
  'tui-menu-item-group': MenuItemGroup,
  'tui-recursive-menu-item': RecursiveMenuItem,
};

// 安装函数
const menuInstall = (app: any) => {
  install(app, TuiMenuComponents);
};

// 导出组件和安装函数
export { menuInstall, TuiMenuComponents };

// 导出类型
export type { TuiMenuProps } from './types';

export default {
  menuInstall,
  ...TuiMenuComponents
};